package com.yidu.action;


import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import com.yidu.common.Message;
import com.yidu.domain.ListenBackstageUser;
import com.yidu.domain.ListenFinance;
import com.yidu.service.ListenFinanceService;

import net.sf.jsqlparser.parser.ParseException;

import java.text.SimpleDateFormat;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.annotation.Resource;
import javax.servlet.http.HttpSession;

import org.springframework.stereotype.Controller;

/**
 * @title 财务Controller类 
 * @author dyl
 * @dateTime 2019年1月14日
 */
@Controller
@RequestMapping("/listenFinance")
public class ListenFinanceController {
	@Resource
	ListenFinanceService service;
	/**
	 * 查询分页的方法
	 * @param toytype
	 * @return
	 * @author dyl
	 */
	@RequestMapping("/findAll")
	@ResponseBody
	public Map<String, Object> findAll() {		
		//定义一个map
		HashMap<String , Object> map = new HashMap<>();
		//查询
		int rows = service.findRows();
		//查询所有的方法
		List<ListenFinance>list=service.findAll();
		//查询总行数
		map.put("code", 0);
		map.put("msg", "");
		map.put("count",rows);
		map.put("data", list);
		//返回对象
		return map;
	}
	
	/**
	 * @title 查询公司财务 
	 * @param 
	 * @return
	 * @author 江宇
	 * @dateTime 2018年12月28日
	 * @versions 1.0
	 */
	@RequestMapping("/findByCompanyId")
	@ResponseBody
	public ListenFinance findByCompanyId(HttpSession session) {		
		ListenBackstageUser users = (ListenBackstageUser) session.getAttribute("user");
		return service.findByCompanyId(users.getSite());
	}
	
	/**
	 * 删除的方法
	 * @param toytype
	 * @return
	 * @author dyl
	 */
	@RequestMapping("/delete")
	@ResponseBody
	public Message delete(ListenFinance finance) {
		//new一个mes对象
		Message message=new Message();
		//定义一个变量
		int rows = service.delete(finance.getFinanceId());
		//判断大于零则成功否则则失败
		if(rows>0) {
			message.setMsg("删除成功");
		}else {
			message.setMsg("删除失败");
		}
		//返回对象
		return message;
	}
	
	/**
	 * 根据id查询的方法
	 * @param toytype
	 * @return
	 * @author dyl
	 */
	@RequestMapping("/findById")
	@ResponseBody
	public ListenFinance findById(ListenFinance finance) {
		//调用财务
		ListenFinance listenFinance2 = service.findById(finance.getFinanceId());
		//返回财务变量
		return listenFinance2;
	}
	
	/**
	 * 增加的方法
	 * @param toytype
	 * @return
	 * @throws ParseException 
	 * @throws java.text.ParseException 
	 * @throws java.text.ParseException 
	 * @author dyl
	 */
	@RequestMapping("/add")
	@ResponseBody
	public Message add(ListenFinance finance) throws ParseException, java.text.ParseException{
		System.out.println("进入此方法");
		System.out.println("==================ID:"+finance.getFinanceId()+"=========");
		//new一个me对象
		Message message=new Message();
		//转换时间类型sim
		SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd");
		finance.setOpenTime(dateFormat.parse(finance.getOpenTimeVo()));
		//定义一个r对象
		int rows = service.add(finance);
		//判断大于零则成功不然则失败
		if(rows>0) {
			message.setMsg("操作成功");
		}else {
			message.setMsg("操作失败");
		}
		//返回之前的对象
		return message;
	}
}

